home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SGI Developer Toolbox 6.1
/
SGI Developer Toolbox 6.1 - Disc 4.iso
/
src
/
haeberli
/
impression
/
ssgen.c
< prev
next >
Wrap
C/C++ Source or Header
|
1994-08-01
|
2KB
|
78 lines
/*
* Copyright 1991, 1992, 1993, 1994, Silicon Graphics, Inc.
* All Rights Reserved.
*
* This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
* the contents of this file may not be disclosed to third parties, copied or
* duplicated in any form, in whole or in part, without the prior written
* permission of Silicon Graphics, Inc.
*
* RESTRICTED RIGHTS LEGEND:
* Use, duplication or disclosure by the Government is subject to restrictions
* as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
* and Computer Software clause at DFARS 252.227-7013, and/or in similar or
* successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
* rights reserved under the Copyright Laws of the United States.
*/
/*
* ssgen -
* Generate a set of sample positions.
*
* Paul Haeberli - 1988
*/
#include "stdio.h"
#include "ss.h"
#include "math.h"
main(argc,argv)
int argc;
char **argv;
{
sampleset *oss;
int xsize, ysize;
if( argc<4 ) {
fprintf(stderr,"usage: ssgen out.ss xsize ysize\n");
exit(1);
}
xsize = atoi(argv[2]);
ysize = atoi(argv[3]);
oss = ssnew();
ssgen(oss,xsize,ysize);
sstofile(argv[1],oss);
}
ssgen(oss,xsize,ysize)
sampleset *oss;
int xsize, ysize;
{
sample *ns;
float xpos, ypos;
int x, y;
for(y=0; y<ysize; y++) {
for(x=0; x<xsize; x++) {
xpos = x/(xsize-1.0);
ypos = y/(ysize-1.0);
ns = (sample *)malloc(sizeof(sample));
ns->xpos = POSSCALE*xpos;
ns->ypos = POSSCALE*ypos;
ns->r = 0;
ns->g = 0;
ns->b = 0;
ns->a = 0;
ns->SAMPLE_SIZE = 60;
#ifdef SDFSD
if(y&1)
ns->SAMPLE_DIR = -256/8;
else
ns->SAMPLE_DIR = 256/8;
#endif
ns->SAMPLE_DIR = -256/8;
ns->SAMPLE_SHAPE = FINELINES;
addsample(oss,ns);
}
}
}